General purpose and business specific electronic data communication meets with four distinct problems, each of which has many sub-problems. We will be discussing these issues with regard to business communication needs, although the following points can apply to almost any category of electronic data communications. The four problems are:                1) The electronic data that is sent and received must be clearly recognized for what it is meant to be. Each company has a different way of representing even the most basic business information, an order form or bill of lading, for example.        2) Once electronic data is received from another company and correctly recognized, it must be integrated into the receiving company's databases and business processing programs. Here again, each company has many differences in their database structures, which means the way they represent and store their electronic data on their computer systems.        3) If the electronic data must be displayed to an end user and allow for end user interaction, here again, each company may be using different types of computer display terminals with various types of display software, various system requirements and business requirements. It is very often necessary to build very expensive electronic data display programs with customized graphical user interfaces.        4) There may be the need to execute the processing of computerized business functions in a coordinated manner, distributed across more than one computer system, due to the need to use a combination of specialized system services and their associated data to accomplish specific business functions. This means that a computerized business system might need to exist in more than one location, operate differently in one or more locations, but function, in essence, as if it were one, single system. The solutions to this problem are usually classified as distributed applications or, more recently, distributed object management systems that are classified as “middleware”.        
There are really two distinct primary issues associated with problem four. The first issue is the need or desire of a company to use the same business application on many different systems, avoiding the need to rewrite the business logic, user interface and network communication interface for each different system that it needs to run on. The second issue is the need to divide the functionality of a single application over more than one system across a communications network, and have it operate in a fully coordinated manner.
There is no single system currently that can solve all of these four problems.
Businesses waste millions of dollars each year, buying, building, rebuilding and maintaining electronic data communication and storage systems that inefficiently and in completely solve various combinations of these four problems.